package com.opentae.data.mall.examples;

import com.opentae.core.mybatis.SgExample;
import com.opentae.core.mybatis.example.EntityColumn;
import com.opentae.core.mybatis.example.EntityTable;
import com.opentae.core.mybatis.mapperhelper.EntityHelper;
import com.opentae.data.mall.beans.TradeReport;

import java.util.*;
public class TradeReportExample extends SgExample<TradeReportExample.Criteria> {
    public static final Class<TradeReport> beanClass = TradeReport.class;
    public static final EntityTable entityTable = EntityHelper.getEntityTable(beanClass);
    public static EntityColumn date;
    public static EntityColumn walletPayPostfee;
    public static EntityColumn wxPayPostfee;
    public static EntityColumn reportId;
    public static EntityColumn walletPayTrade;
    public static EntityColumn voucherPayPostfee;
    public static EntityColumn wxPayTrade;
    public static EntityColumn voucherPayTrade;
    static {
        Set<EntityColumn> columns = entityTable.getEntityClassColumns();
        Map<String, EntityColumn> listMap = new HashMap<>();
        for (EntityColumn column : columns) {
            listMap.put(column.getProperty(), column);
        }
        date = listMap.get("date");
        walletPayPostfee = listMap.get("walletPayPostfee");
        wxPayPostfee = listMap.get("wxPayPostfee");
        reportId = listMap.get("reportId");
        walletPayTrade = listMap.get("walletPayTrade");
        voucherPayPostfee = listMap.get("voucherPayPostfee");
        wxPayTrade = listMap.get("wxPayTrade");
        voucherPayTrade = listMap.get("voucherPayTrade");
        }

    public TradeReportExample() {
        this.setTableAlias(entityTable.getName());
    }

    @Override
    public EntityTable getEntityTable() {
        return entityTable;
    }

    @Override
    protected TradeReportExample.Criteria createCriteriaInternal() {
        return new TradeReportExample.Criteria(this);
    }

    public static class Criteria extends SgExample.GeneratedCriteria<Criteria> {
        protected Criteria(SgExample example) {
            super(example);
        }

        public TradeReportExample.Criteria andDateIsNull() {
            return isNull(date);
        }

        public TradeReportExample.Criteria andDateIsNotNull() {
            return isNotNull(date);
        }

        public TradeReportExample.Criteria andDateEqualTo(String value) {
            return equalTo(date, value);
        }

        public TradeReportExample.Criteria andDateNotEqualTo(String value) {
            return notEqualTo(date, value);
        }

        public TradeReportExample.Criteria andDateGreaterThan(String value) {
            return greaterThan(date, value);
        }

        public TradeReportExample.Criteria andDateGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(date, value);
        }

        public TradeReportExample.Criteria andDateLessThan(String value) {
            return lessThan(date, value);
        }

        public TradeReportExample.Criteria andDateLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(date, value);
        }

        public TradeReportExample.Criteria andDateLike(String value) {
            return like(date, value);
        }

        public TradeReportExample.Criteria andDateNotLike(String value) {
            return notLike(date, value);
        }

        public TradeReportExample.Criteria andDateIn(List<String> values) {
            return in(date, values);
        }

        public TradeReportExample.Criteria andDateNotIn(List<String> values) {
            return notIn(date, values);
        }

        public TradeReportExample.Criteria andDateBetween(String value1, String value2) {
            return between(date, value1, value2);
        }

        public TradeReportExample.Criteria andDateNotBetween(String value1, String value2) {
            return notBetween(date, value1, value2);
        }
        public TradeReportExample.Criteria andWalletPayPostfeeIsNull() {
            return isNull(walletPayPostfee);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeIsNotNull() {
            return isNotNull(walletPayPostfee);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeEqualTo(String value) {
            return equalTo(walletPayPostfee, value);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeNotEqualTo(String value) {
            return notEqualTo(walletPayPostfee, value);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeGreaterThan(String value) {
            return greaterThan(walletPayPostfee, value);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(walletPayPostfee, value);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeLessThan(String value) {
            return lessThan(walletPayPostfee, value);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(walletPayPostfee, value);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeLike(String value) {
            return like(walletPayPostfee, value);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeNotLike(String value) {
            return notLike(walletPayPostfee, value);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeIn(List<String> values) {
            return in(walletPayPostfee, values);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeNotIn(List<String> values) {
            return notIn(walletPayPostfee, values);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeBetween(String value1, String value2) {
            return between(walletPayPostfee, value1, value2);
        }

        public TradeReportExample.Criteria andWalletPayPostfeeNotBetween(String value1, String value2) {
            return notBetween(walletPayPostfee, value1, value2);
        }
        public TradeReportExample.Criteria andWxPayPostfeeIsNull() {
            return isNull(wxPayPostfee);
        }

        public TradeReportExample.Criteria andWxPayPostfeeIsNotNull() {
            return isNotNull(wxPayPostfee);
        }

        public TradeReportExample.Criteria andWxPayPostfeeEqualTo(String value) {
            return equalTo(wxPayPostfee, value);
        }

        public TradeReportExample.Criteria andWxPayPostfeeNotEqualTo(String value) {
            return notEqualTo(wxPayPostfee, value);
        }

        public TradeReportExample.Criteria andWxPayPostfeeGreaterThan(String value) {
            return greaterThan(wxPayPostfee, value);
        }

        public TradeReportExample.Criteria andWxPayPostfeeGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(wxPayPostfee, value);
        }

        public TradeReportExample.Criteria andWxPayPostfeeLessThan(String value) {
            return lessThan(wxPayPostfee, value);
        }

        public TradeReportExample.Criteria andWxPayPostfeeLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(wxPayPostfee, value);
        }

        public TradeReportExample.Criteria andWxPayPostfeeLike(String value) {
            return like(wxPayPostfee, value);
        }

        public TradeReportExample.Criteria andWxPayPostfeeNotLike(String value) {
            return notLike(wxPayPostfee, value);
        }

        public TradeReportExample.Criteria andWxPayPostfeeIn(List<String> values) {
            return in(wxPayPostfee, values);
        }

        public TradeReportExample.Criteria andWxPayPostfeeNotIn(List<String> values) {
            return notIn(wxPayPostfee, values);
        }

        public TradeReportExample.Criteria andWxPayPostfeeBetween(String value1, String value2) {
            return between(wxPayPostfee, value1, value2);
        }

        public TradeReportExample.Criteria andWxPayPostfeeNotBetween(String value1, String value2) {
            return notBetween(wxPayPostfee, value1, value2);
        }
        public TradeReportExample.Criteria andReportIdIsNull() {
            return isNull(reportId);
        }

        public TradeReportExample.Criteria andReportIdIsNotNull() {
            return isNotNull(reportId);
        }

        public TradeReportExample.Criteria andReportIdEqualTo(Long value) {
            return equalTo(reportId, value);
        }

        public TradeReportExample.Criteria andReportIdNotEqualTo(Long value) {
            return notEqualTo(reportId, value);
        }

        public TradeReportExample.Criteria andReportIdGreaterThan(Long value) {
            return greaterThan(reportId, value);
        }

        public TradeReportExample.Criteria andReportIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(reportId, value);
        }

        public TradeReportExample.Criteria andReportIdLessThan(Long value) {
            return lessThan(reportId, value);
        }

        public TradeReportExample.Criteria andReportIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(reportId, value);
        }

        public TradeReportExample.Criteria andReportIdIn(List<Long> values) {
            return in(reportId, values);
        }

        public TradeReportExample.Criteria andReportIdNotIn(List<Long> values) {
            return notIn(reportId, values);
        }

        public TradeReportExample.Criteria andReportIdBetween(Long value1, Long value2) {
            return between(reportId, value1, value2);
        }

        public TradeReportExample.Criteria andReportIdNotBetween(Long value1, Long value2) {
            return notBetween(reportId, value1, value2);
        }
        public TradeReportExample.Criteria andWalletPayTradeIsNull() {
            return isNull(walletPayTrade);
        }

        public TradeReportExample.Criteria andWalletPayTradeIsNotNull() {
            return isNotNull(walletPayTrade);
        }

        public TradeReportExample.Criteria andWalletPayTradeEqualTo(String value) {
            return equalTo(walletPayTrade, value);
        }

        public TradeReportExample.Criteria andWalletPayTradeNotEqualTo(String value) {
            return notEqualTo(walletPayTrade, value);
        }

        public TradeReportExample.Criteria andWalletPayTradeGreaterThan(String value) {
            return greaterThan(walletPayTrade, value);
        }

        public TradeReportExample.Criteria andWalletPayTradeGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(walletPayTrade, value);
        }

        public TradeReportExample.Criteria andWalletPayTradeLessThan(String value) {
            return lessThan(walletPayTrade, value);
        }

        public TradeReportExample.Criteria andWalletPayTradeLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(walletPayTrade, value);
        }

        public TradeReportExample.Criteria andWalletPayTradeLike(String value) {
            return like(walletPayTrade, value);
        }

        public TradeReportExample.Criteria andWalletPayTradeNotLike(String value) {
            return notLike(walletPayTrade, value);
        }

        public TradeReportExample.Criteria andWalletPayTradeIn(List<String> values) {
            return in(walletPayTrade, values);
        }

        public TradeReportExample.Criteria andWalletPayTradeNotIn(List<String> values) {
            return notIn(walletPayTrade, values);
        }

        public TradeReportExample.Criteria andWalletPayTradeBetween(String value1, String value2) {
            return between(walletPayTrade, value1, value2);
        }

        public TradeReportExample.Criteria andWalletPayTradeNotBetween(String value1, String value2) {
            return notBetween(walletPayTrade, value1, value2);
        }
        public TradeReportExample.Criteria andVoucherPayPostfeeIsNull() {
            return isNull(voucherPayPostfee);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeIsNotNull() {
            return isNotNull(voucherPayPostfee);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeEqualTo(String value) {
            return equalTo(voucherPayPostfee, value);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeNotEqualTo(String value) {
            return notEqualTo(voucherPayPostfee, value);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeGreaterThan(String value) {
            return greaterThan(voucherPayPostfee, value);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(voucherPayPostfee, value);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeLessThan(String value) {
            return lessThan(voucherPayPostfee, value);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(voucherPayPostfee, value);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeLike(String value) {
            return like(voucherPayPostfee, value);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeNotLike(String value) {
            return notLike(voucherPayPostfee, value);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeIn(List<String> values) {
            return in(voucherPayPostfee, values);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeNotIn(List<String> values) {
            return notIn(voucherPayPostfee, values);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeBetween(String value1, String value2) {
            return between(voucherPayPostfee, value1, value2);
        }

        public TradeReportExample.Criteria andVoucherPayPostfeeNotBetween(String value1, String value2) {
            return notBetween(voucherPayPostfee, value1, value2);
        }
        public TradeReportExample.Criteria andWxPayTradeIsNull() {
            return isNull(wxPayTrade);
        }

        public TradeReportExample.Criteria andWxPayTradeIsNotNull() {
            return isNotNull(wxPayTrade);
        }

        public TradeReportExample.Criteria andWxPayTradeEqualTo(String value) {
            return equalTo(wxPayTrade, value);
        }

        public TradeReportExample.Criteria andWxPayTradeNotEqualTo(String value) {
            return notEqualTo(wxPayTrade, value);
        }

        public TradeReportExample.Criteria andWxPayTradeGreaterThan(String value) {
            return greaterThan(wxPayTrade, value);
        }

        public TradeReportExample.Criteria andWxPayTradeGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(wxPayTrade, value);
        }

        public TradeReportExample.Criteria andWxPayTradeLessThan(String value) {
            return lessThan(wxPayTrade, value);
        }

        public TradeReportExample.Criteria andWxPayTradeLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(wxPayTrade, value);
        }

        public TradeReportExample.Criteria andWxPayTradeLike(String value) {
            return like(wxPayTrade, value);
        }

        public TradeReportExample.Criteria andWxPayTradeNotLike(String value) {
            return notLike(wxPayTrade, value);
        }

        public TradeReportExample.Criteria andWxPayTradeIn(List<String> values) {
            return in(wxPayTrade, values);
        }

        public TradeReportExample.Criteria andWxPayTradeNotIn(List<String> values) {
            return notIn(wxPayTrade, values);
        }

        public TradeReportExample.Criteria andWxPayTradeBetween(String value1, String value2) {
            return between(wxPayTrade, value1, value2);
        }

        public TradeReportExample.Criteria andWxPayTradeNotBetween(String value1, String value2) {
            return notBetween(wxPayTrade, value1, value2);
        }
        public TradeReportExample.Criteria andVoucherPayTradeIsNull() {
            return isNull(voucherPayTrade);
        }

        public TradeReportExample.Criteria andVoucherPayTradeIsNotNull() {
            return isNotNull(voucherPayTrade);
        }

        public TradeReportExample.Criteria andVoucherPayTradeEqualTo(String value) {
            return equalTo(voucherPayTrade, value);
        }

        public TradeReportExample.Criteria andVoucherPayTradeNotEqualTo(String value) {
            return notEqualTo(voucherPayTrade, value);
        }

        public TradeReportExample.Criteria andVoucherPayTradeGreaterThan(String value) {
            return greaterThan(voucherPayTrade, value);
        }

        public TradeReportExample.Criteria andVoucherPayTradeGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(voucherPayTrade, value);
        }

        public TradeReportExample.Criteria andVoucherPayTradeLessThan(String value) {
            return lessThan(voucherPayTrade, value);
        }

        public TradeReportExample.Criteria andVoucherPayTradeLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(voucherPayTrade, value);
        }

        public TradeReportExample.Criteria andVoucherPayTradeLike(String value) {
            return like(voucherPayTrade, value);
        }

        public TradeReportExample.Criteria andVoucherPayTradeNotLike(String value) {
            return notLike(voucherPayTrade, value);
        }

        public TradeReportExample.Criteria andVoucherPayTradeIn(List<String> values) {
            return in(voucherPayTrade, values);
        }

        public TradeReportExample.Criteria andVoucherPayTradeNotIn(List<String> values) {
            return notIn(voucherPayTrade, values);
        }

        public TradeReportExample.Criteria andVoucherPayTradeBetween(String value1, String value2) {
            return between(voucherPayTrade, value1, value2);
        }

        public TradeReportExample.Criteria andVoucherPayTradeNotBetween(String value1, String value2) {
            return notBetween(voucherPayTrade, value1, value2);
        }
    }
}